package com.springboot.springmvc.restful.crud.config;


import com.springboot.springmvc.restful.crud.interceptor.MyHandleInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
//对拦截器进行配置
/*
    容器中需要WebMvcConfigurer的实现类，实现addInterceptors方法，添加拦截器
        1.@Bean中放一个WebMvcConfigurer
        2.配置类放一个WebMvcConfigurer
        @EnableWebMvc注解：开启SpringMVC的自动配置功能，默认情况下，SpringMVC会自动配置好
        SpringMVC的一些组件，如：视图解析器、文件上传解析器、消息转换器等
        @EnableWebMvc注解：关闭SpringMVC的自动配置功能，此时，SpringMVC不会自动配置
        SpringMVC的一些组件，需要自己配置
        @EnableWebMvc注解：开启SpringMVC的自动配置功能，默认情况下，Sp
*/
public class MySpringMVCConfig implements WebMvcConfigurer {
    @Autowired
    MyHandleInterceptor myHandleInterceptor;
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(myHandleInterceptor)
                .addPathPatterns("/**"); //拦截所有请求
    }
}
